package com.ruoyi.report_ljlm.service;

import com.ruoyi.report_ljlm.domain.HdxywzxbgBsInfo;
import com.ruoyi.report_ljlm.domain.vo.HdxywzxbgBsInfoVo;
import com.ruoyi.report_ljlm.domain.bo.HdxywzxbgBsInfoBo;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.domain.PageQuery;

import java.util.Collection;
import java.util.List;

/**
 * 路面厚度、芯样完整性试验检测报告(钻芯法)Service接口
 *
 * @author llb
 * @date 2024-07-10
 */
public interface IHdxywzxbgBsInfoService {

    /**
     * 查询路面厚度、芯样完整性试验检测报告(钻芯法)
     */
    HdxywzxbgBsInfoVo queryById(Long excelId);

    /**
     * 查询路面厚度、芯样完整性试验检测报告(钻芯法)列表
     */
    TableDataInfo<HdxywzxbgBsInfoVo> queryPageList(HdxywzxbgBsInfoBo bo, PageQuery pageQuery);

    /**
     * 查询路面厚度、芯样完整性试验检测报告(钻芯法)列表
     */
    List<HdxywzxbgBsInfoVo> queryList(HdxywzxbgBsInfoBo bo);

    /**
     * 新增路面厚度、芯样完整性试验检测报告(钻芯法)
     */
    Boolean insertByBo(HdxywzxbgBsInfoBo bo);

    /**
     * 修改路面厚度、芯样完整性试验检测报告(钻芯法)
     */
    Boolean updateByBo(HdxywzxbgBsInfoBo bo);

    /**
     * 校验并批量删除路面厚度、芯样完整性试验检测报告(钻芯法)信息
     */
    Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);

    HdxywzxbgBsInfoVo jcjl(HdxywzxbgBsInfoVo vo);

    boolean isWell(Long excelId);
}
